package network;

import java.io.IOException;
import java.net.SocketException;
import java.util.HashMap;
import java.util.Map;

/**
 * Created with IntelliJ IDEA.
 * Description:翻译本身就是查表
 * User: Microsoft
 * Date: 2023-08-02
 * Time: 21:17
 */
//使用继承，就是为了能够复用之前的代码，不用再写一遍，直接继承过来
public class UdpDictServer extends UdpEchoServer{
    //用来存
    private Map<String ,String> dict = new HashMap<>();//翻译本身就是查表,他们那些翻译软件就是利用服务器上的巨大数据，进行查表

    public UdpDictServer(int port) throws SocketException {
        super(port);//调用父类的构造方法

        dict.put("dog", "小狗");
        dict.put("cat", "小猫");
        dict.put("fun", "好");
        //········无限的添加数据，有道词典就是这样做的， 只不过是表更大而已
    }

    @Override
    public String process(String request) {
        return dict.getOrDefault(request,"该单词没有查到");
    }

    public static void main(String[] args) throws IOException {
        UdpDictServer udpDictServer = new UdpDictServer(9090);
        udpDictServer.start();//父类有start
    }

}
